home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / oper_sys / emerald / emrldsys.lha / Makefile < prev   
Makefile  |  1990-11-20  |  4KB  |  149 lines

  1. # copyright 1990 Eric Jul and Bjarne Steensgaard
  2. # This is an attempt to write a makefile for the Emerald release.
  3.  
  4. usage:
  5.     @echo 'Follow the instructions in InstallNotes2'
  6.     @echo 'or in InstallNotes3.'
  7.     @echo 'The latter is almost automatic.'
  8.  
  9. # 1 - 2
  10. fixemname:
  11.     @echo 'You must edit the shell-script Scripts/fixemdir file to include'
  12.     @echo 'your machine name and other stuff.'
  13.  
  14. # 3 - 4
  15. ./Scripts/fixemdir.DoIt: ./Scripts/fixemdir
  16.     @echo 'Fixing names of the Emerald root dir.'
  17.     @echo 'Expected times: 6 min (Sun 3/260,), 15 min (VAX 11/785)'
  18.     @echo 'Finding the files to modify.'
  19.     Scripts/fixemdir -r
  20. ./Scripts/startOpNameServer: ./Scripts/fixemdir.DoIt
  21.     @echo 'Doing the edits.'
  22.     Scripts/fixemdir.DoIt
  23.  
  24. # 5
  25. ./EC/OperationNames/startOpNames: ./Scripts/fixemdir.DoIt
  26.     @echo 'Fixing the Operation Name server.'
  27.     @cd EC/OperationNames; \
  28.     make clean; \
  29.     echo 'Recompiling name server'; \
  30.     make; \
  31.     echo 'Reinitializing name server data base.'; \
  32.     make new
  33.  
  34. # 6.    Dummy builtins
  35. ./Language/Compiler/DBuiltins/dummyBuiltins.a: ./Scripts/fixemdir.DoIt
  36.     @echo 'Doing Dummy Builtins (used by bootstrap compiler)'
  37.     @cd Language/Compiler/DBuiltins; \
  38.     rm -f  *.o; \
  39.     make
  40.  
  41. # 7.a     Build real builtins and compiler
  42. ./Language/Compiler/ec: ./Scripts/fixemdir.DoIt ./bin/copydate ./bin/ctime
  43.     @echo 'Building the compiler.'
  44.     @echo 'Takes 10 - 40 minutes'
  45.     @echo 'First remove old compiled files.'
  46.     bin/newTreeVersion
  47.     @echo 'Second, recompile the compiler 3 times (self bootstrap).'
  48.     rm -f Language/Compiler/*.o Language/Malloc/*.o
  49.     cd Language/Compiler/Builtins; \
  50.     rm -f ../cliOpNames.o; \
  51.     rm -f ../srvOpNames.o; \
  52.     make fromscratch
  53.  
  54. # 7.b     
  55. ./bin/ec: ./Language/Compiler/ec
  56.     @echo 'Installing the new compiler.'
  57.     rm -f bin/ec
  58.     cp Language/Compiler/ec bin/ec
  59.     strip bin/ec
  60.  
  61. # 8     
  62. ./bin/runec: ./Scripts/fixemdir.DoIt
  63.     @echo 'Making the runec program.'
  64.     cd Language/Runec; \
  65.     make install
  66.  
  67. # 9 Make the kernel
  68. ./bin/em: ./Scripts/fixemdir.DoIt ./bin/makedep ./Kernel/h/consts.h
  69.     @echo 'Making the kernel.'
  70.     @cd Kernel/Em; \
  71.     make clean; \
  72.     make depend MACHINE=`/bin/arch`;
  73.     @cd Kernel/Em; \
  74.     make em MACHINE=`/bin/arch`; \
  75.     echo "Installing the kernel"; \
  76.     rm -f ../../bin/em; \
  77.     cp em ../../bin/em; \
  78.     strip ../../bin/em
  79.  
  80. # 10 
  81. ./bin/snapshot: ./Scripts/fixemdir.DoIt
  82.     @echo 'Making KmdOps.'
  83.     @cd Kernel/KmdOps; \
  84.     make clean; \
  85.     make install
  86.  
  87. # 11
  88. ExecTests:
  89.     @echo 'Doing compiler tests, if output looks OK, rejoice.'
  90.     @cd Language/ExecTests; \
  91.     make clean; \
  92.     make test
  93.  
  94. dofixemdir: ./Scripts/startOpNameServer
  95.  
  96. nameserver: ./EC/OperationNames/startOpNames
  97.  
  98. dummybuiltins: ./Language/Compiler/DBuiltins/dummyBuiltins.a
  99.  
  100. compiler: ./bin/ec
  101.  
  102. runec: ./bin/runec
  103.  
  104. kernel:    ./bin/em
  105.  
  106. KmdOps: ./bin/snapshot
  107.  
  108. ./bin/makedep: ./Scripts/fixemdir.DoIt
  109.     @echo 'Making dependency program'
  110.     @cd Utils/makedep; \
  111.     rm -f *.o; \
  112.     make makedep
  113.     @strip Utils/makedep/makedep
  114.     @mv Utils/makedep/makedep bin
  115.  
  116. ./bin/copydate: ./Scripts/fixemdir.DoIt
  117.     @echo 'Making copydate program'
  118.     @cd Utils/copydate; \
  119.     rm -f *.o; \
  120.     make copydate
  121.     @mv Utils/copydate/copydate bin
  122.     @strip bin/copydate
  123.  
  124. ./bin/ctime: ./Scripts/fixemdir.DoIt
  125.     @echo 'Making ctime program'
  126.     @cd Utils/ctime; \
  127.     rm -f *.o; \
  128.     make ctime
  129.     @mv Utils/ctime/ctime bin
  130.     @strip bin/ctime
  131.  
  132. ./Kernel/h/consts.h: ./Scripts/fixemdir.DoIt
  133.     -rm -f Kernel/h/consts.h
  134.     cd Kernel/h; \
  135.     make consts.h
  136.  
  137. test: ExecTests
  138.  
  139. fromscratch: dofixemdir nameserver dummybuiltins compiler runec kernel KmdOps
  140.     @echo 'The Emerald system is now installed'
  141.     @echo
  142.     @echo 'The first time the kernel (em) is started it will probably fail.'
  143.     @echo 'Second time the kernel will (hopefully) boot.'
  144.     @echo
  145.     @echo 'You should start the kernel, and when it is fully booted'
  146.     @echo 'you should test the system.'
  147.     @echo 'A minimal set of test programs can be run by doing'
  148.     @echo '   make test'
  149.